<?php

namespace app\model\trait;

trait PasswordTrait
{
    /**
     * 默认密码
     */
    const string DEFAULT_PASSWORD = '123456';

    /**
     * 生成加密密码
     */
    public static function encryptPassword(string $password): string
    {
        return password_hash($password, PASSWORD_DEFAULT);
    }

    /**
     * 生成默认密码
     */
    public static function generateDefaultPassword(): string
    {
        return self::encryptPassword(self::DEFAULT_PASSWORD);
    }

    /**
     * 验证密码
     */
    public function verifyPassword(string $password): bool
    {
        return password_verify($password, $this->password);
    }
}
